#ifndef __PRIMARY_GEOMETRY__
#define __PRIMARY_GEOMETRY__

// GLEW
#include "glew/glew.h"
#include "glew/wglew.h"
#define GLFW_DLL
#include "GLFW/glfw3.h"
#include <stdlib.h>
#include <math.h>

void createCircleTable(double **sint,double **cost,const int n);
void drawFrustum(float width,float height,float frush_Near,float frush_Far);

/*NEW FUNCTION*/
void pushToVer(float * v,float p[3],int &offset);

void pushToVer(GLshort * v,GLshort p[3],int &offset);

void createSphereVertices_short(GLshort * vertices,GLshort radius,GLint slices,GLint stacks);
void createHalfSphereVertices_short(GLshort * vertices,GLshort radius,GLint slices,GLint stacks);

void createCyliderVertices(GLfloat * vertices,GLfloat radius,GLint slices);

void createConeVertices_short(GLshort * vertices,GLfloat botRadius,GLfloat topRadius,GLfloat height,GLint slices);

void createDisplayListForCone(GLuint& buff,GLuint& dipslayList,GLint slices);


#define N_SLICES 18
#define N_STACKS 8
#define N_LOW_SLICES 12
#define N_LOW_STACKS 6
#endif